{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import cv2\n",
    "import time\n",
    "import numpy as np\n",
    "from yolo import YOLO\n",
    "from PIL import Image"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "#-------------------------------------#\n",
    "#       对单张图片进行预测\n",
    "#-------------------------------------#\n",
    "def detect_image(image_path):\n",
    "    print('Start detect!')\n",
    "    yolo = YOLO()\n",
    "    try:\n",
    "        image = Image.open(image_path)\n",
    "    except:\n",
    "        print('Open Error! Try again!')\n",
    "        pass\n",
    "    else:\n",
    "        r_image = yolo.detect_image(image)\n",
    "        r_image.save(image_path.split('.')[0] + '_result.png')\n",
    "    print('Finish detect!')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "#-------------------------------------#\n",
    "#       对一段视频进行检测\n",
    "#-------------------------------------#\n",
    "def detect_video(video_path):\n",
    "    print('Start detect!')\n",
    "    yolo = YOLO()\n",
    "    capture = cv2.VideoCapture(video_path)\n",
    "    writer = None\n",
    "    fps = 0.0\n",
    "    while True:\n",
    "        t1 = time.time()\n",
    "        # 读取某一帧\n",
    "        grabbed, frame = capture.read()\n",
    "        if not grabbed:\n",
    "            break\n",
    "        # opencv读取的是BGR，格式转变，BGRtoRGB\n",
    "        frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)\n",
    "        # 转变成Image\n",
    "        frame = Image.fromarray(np.uint8(frame))\n",
    "        # 进行检测\n",
    "        frame = np.array(yolo.detect_image(frame))\n",
    "        # RGBtoBGR满足opencv显示格式\n",
    "        frame = cv2.cvtColor(frame,cv2.COLOR_RGB2BGR)\n",
    "\n",
    "        fps  = (fps + (1. / (time.time() - t1))) / 2\n",
    "        print(\"FPS: %.2f\" % (fps))\n",
    "        frame = cv2.putText(frame, \"FPS: %.2f\" % (fps), (0, 40), cv2.FONT_HERSHEY_SIMPLEX, 1, (255, 0, 0), 2, cv2.LINE_AA)\n",
    "        \n",
    "        if writer is None:\n",
    "            fourcc = cv2.VideoWriter_fourcc(*'MP4V')\n",
    "            writer = cv2.VideoWriter(video_path.split('.')[0] + '_result.mp4', fourcc, 30, (frame.shape[1], frame.shape[0]), True)\n",
    "        writer.write(frame)\n",
    "    writer.release()\n",
    "    capture.release()\n",
    "    print('Finish detect!')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Start detect!\n",
      "Loading pretrained weights.\n",
      "Finish loading!\n",
      "model_data/yolov4_maskdetect_weights1.pth model, anchors, and classes loaded.\n",
      "(5, 4)\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.84'\n",
      "b'mask: 0.88'\n",
      "b'mask: 0.80'\n",
      "b'nomask: 0.96'\n",
      "Finish detect!\n"
     ]
    }
   ],
   "source": [
    "detect_image('testImage.png')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Start detect!\n",
      "Loading pretrained weights.\n",
      "Finish loading!\n",
      "model_data/yolov4_maskdetect_weights1.pth model, anchors, and classes loaded.\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 2.64\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 7.74\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 10.32\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 11.39\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.54'\n",
      "FPS: 11.70\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 12.11\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 12.32\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.75'\n",
      "FPS: 12.70\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.62'\n",
      "FPS: 12.91\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.26\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.51\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.61'\n",
      "FPS: 13.24\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.31\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.38\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.45\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.49\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.58'\n",
      "FPS: 13.23\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.56'\n",
      "FPS: 13.16\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.51'\n",
      "FPS: 12.59\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.28\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.62'\n",
      "FPS: 13.05\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.69'\n",
      "FPS: 12.43\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.63'\n",
      "FPS: 12.77\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.27\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.25\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.47\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.53'\n",
      "FPS: 13.35\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.31\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.39\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 12.97\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 12.64\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 12.87\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 12.76\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 12.96\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.23\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.29\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.07\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.52'\n",
      "FPS: 12.69\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 12.91\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.00\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.28\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.09\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.40\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.52\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.54\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.48\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.58\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.49\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.07\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.15\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 12.98\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.31\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.48\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.56\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.66\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.75\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.80\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.55\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.63\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.32\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.55'\n",
      "FPS: 13.28\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.54'\n",
      "FPS: 13.26\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.60'\n",
      "FPS: 12.89\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.51'\n",
      "FPS: 13.03\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.40\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.49\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.47\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.60\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.59\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.51\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.58\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.24\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.42\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.04\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.26\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.48\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.57\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.46\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.73\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.91\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.38\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.28\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.67\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.69\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.59\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.67\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.72\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.71\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.60\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.68\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.51\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.84\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.83\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.69\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.50'\n",
      "FPS: 13.05\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.70'\n",
      "FPS: 13.00\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.62'\n",
      "FPS: 12.98\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 12.54\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 12.99\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.69'\n",
      "FPS: 12.89\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.69'\n",
      "FPS: 12.81\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.62'\n",
      "FPS: 12.76\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.62'\n",
      "FPS: 12.42\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.61'\n",
      "FPS: 12.65\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.61'\n",
      "FPS: 12.66\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.61'\n",
      "FPS: 12.66\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.02\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.28\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.34\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.44\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.48\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.43\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.29\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.38\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.32\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.40\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 12.95\n",
      "(2, 4)\n",
      "b'mask: 1.00'\n",
      "b'mask: 0.50'\n",
      "FPS: 12.80\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 12.87\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.16\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.23\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.25\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 12.91\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.28\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.54\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.53\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.52\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.28\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.38\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.33\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.03\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.31\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.38\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.54\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.44\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.46\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.42\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.50\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.34\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.43\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.44\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.31\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.05\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 12.87\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 12.98\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 12.15\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 12.56\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 12.84\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.11\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.33\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.28\n",
      "(13, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.86'\n",
      "b'mask: 0.70'\n",
      "FPS: 10.75\n",
      "(13, 4)\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.84'\n",
      "b'mask: 0.60'\n",
      "FPS: 9.44\n",
      "(13, 4)\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.88'\n",
      "b'mask: 0.86'\n",
      "b'mask: 0.81'\n",
      "b'mask: 0.80'\n",
      "b'mask: 0.66'\n",
      "FPS: 8.85\n",
      "(12, 4)\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.86'\n",
      "b'mask: 0.62'\n",
      "FPS: 8.60\n",
      "(13, 4)\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.84'\n",
      "b'mask: 0.66'\n",
      "b'mask: 0.51'\n",
      "FPS: 8.18\n",
      "(13, 4)\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.77'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.81'\n",
      "b'mask: 0.71'\n",
      "b'mask: 0.64'\n",
      "FPS: 8.41\n",
      "(13, 4)\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.72'\n",
      "b'mask: 0.63'\n",
      "b'mask: 0.61'\n",
      "FPS: 8.34\n",
      "(15, 4)\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.78'\n",
      "b'mask: 0.58'\n",
      "b'mask: 0.51'\n",
      "b'nomask: 0.52'\n",
      "FPS: 8.10\n",
      "(14, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.82'\n",
      "b'mask: 0.78'\n",
      "b'mask: 0.55'\n",
      "b'mask: 0.51'\n",
      "FPS: 7.98\n",
      "(14, 4)\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.82'\n",
      "b'mask: 0.75'\n",
      "b'mask: 0.58'\n",
      "b'nomask: 0.65'\n",
      "FPS: 7.97\n",
      "(16, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.88'\n",
      "b'mask: 0.64'\n",
      "b'mask: 0.52'\n",
      "b'mask: 0.52'\n",
      "b'nomask: 0.70'\n",
      "FPS: 7.89\n",
      "(15, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.88'\n",
      "b'mask: 0.86'\n",
      "b'mask: 0.62'\n",
      "b'mask: 0.52'\n",
      "b'nomask: 0.79'\n",
      "FPS: 7.73\n",
      "(14, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.99'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.57'\n",
      "b'nomask: 0.79'\n",
      "FPS: 7.86\n",
      "(15, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.99'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.58'\n",
      "b'mask: 0.55'\n",
      "b'nomask: 0.77'\n",
      "FPS: 7.90\n",
      "(15, 4)\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.99'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.58'\n",
      "b'mask: 0.51'\n",
      "b'nomask: 0.79'\n",
      "FPS: 7.94\n",
      "(14, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.51'\n",
      "b'nomask: 0.81'\n",
      "FPS: 7.87\n",
      "(13, 4)\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.95'\n",
      "b'nomask: 0.82'\n",
      "FPS: 8.02\n",
      "(12, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.92'\n",
      "b'nomask: 0.78'\n",
      "FPS: 7.93\n",
      "(12, 4)\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.91'\n",
      "b'nomask: 0.77'\n",
      "FPS: 8.30\n",
      "(13, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.63'\n",
      "b'mask: 0.51'\n",
      "b'nomask: 0.74'\n",
      "FPS: 8.38\n",
      "(12, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.62'\n",
      "b'nomask: 0.70'\n",
      "FPS: 8.33\n",
      "(13, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.64'\n",
      "b'mask: 0.61'\n",
      "b'nomask: 0.52'\n",
      "FPS: 8.43\n",
      "(12, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.62'\n",
      "b'nomask: 0.54'\n",
      "FPS: 8.40\n",
      "(12, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.74'\n",
      "b'nomask: 0.54'\n",
      "FPS: 8.40\n",
      "(11, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.87'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.77'\n",
      "FPS: 8.64\n",
      "(12, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.84'\n",
      "b'mask: 0.78'\n",
      "b'nomask: 0.53'\n",
      "FPS: 8.29\n",
      "(11, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.84'\n",
      "b'mask: 0.70'\n",
      "FPS: 8.32\n",
      "(11, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.85'\n",
      "b'mask: 0.72'\n",
      "FPS: 8.59\n",
      "(11, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.85'\n",
      "b'mask: 0.74'\n",
      "FPS: 8.76\n",
      "(11, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.85'\n",
      "b'mask: 0.71'\n",
      "FPS: 8.77\n",
      "(11, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.84'\n",
      "b'mask: 0.71'\n",
      "FPS: 8.83\n",
      "(11, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.87'\n",
      "b'mask: 0.83'\n",
      "b'mask: 0.72'\n",
      "FPS: 8.74\n",
      "(12, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.84'\n",
      "b'mask: 0.72'\n",
      "b'nomask: 0.56'\n",
      "FPS: 8.80\n",
      "(12, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.86'\n",
      "b'mask: 0.85'\n",
      "b'mask: 0.83'\n",
      "b'mask: 0.73'\n",
      "b'nomask: 0.53'\n",
      "FPS: 8.71\n",
      "(12, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.83'\n",
      "b'mask: 0.86'\n",
      "b'mask: 0.73'\n",
      "b'nomask: 0.55'\n",
      "FPS: 8.73\n",
      "(12, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.87'\n",
      "b'mask: 0.85'\n",
      "b'mask: 0.83'\n",
      "b'mask: 0.77'\n",
      "b'nomask: 0.58'\n",
      "FPS: 8.76\n",
      "(12, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.87'\n",
      "b'mask: 0.79'\n",
      "b'mask: 0.83'\n",
      "b'mask: 0.82'\n",
      "b'nomask: 0.58'\n",
      "FPS: 8.81\n",
      "(13, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.79'\n",
      "b'mask: 0.83'\n",
      "b'mask: 0.81'\n",
      "b'mask: 0.52'\n",
      "b'nomask: 0.60'\n",
      "FPS: 8.66\n",
      "(13, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.88'\n",
      "b'mask: 0.87'\n",
      "b'mask: 0.77'\n",
      "b'mask: 0.79'\n",
      "b'mask: 0.61'\n",
      "b'nomask: 0.59'\n",
      "FPS: 8.68\n",
      "(14, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.84'\n",
      "b'mask: 0.87'\n",
      "b'mask: 0.84'\n",
      "b'mask: 0.80'\n",
      "b'mask: 0.74'\n",
      "b'mask: 0.54'\n",
      "b'nomask: 0.55'\n",
      "FPS: 8.48\n",
      "(12, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.84'\n",
      "b'mask: 0.85'\n",
      "b'mask: 0.77'\n",
      "b'mask: 0.71'\n",
      "FPS: 8.64\n",
      "(12, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.88'\n",
      "b'mask: 0.83'\n",
      "b'mask: 0.85'\n",
      "b'mask: 0.76'\n",
      "FPS: 8.65\n",
      "(12, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.84'\n",
      "b'mask: 0.88'\n",
      "b'mask: 0.72'\n",
      "FPS: 8.53\n",
      "(13, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.84'\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.88'\n",
      "b'mask: 0.88'\n",
      "b'mask: 0.74'\n",
      "b'mask: 0.69'\n",
      "FPS: 8.16\n",
      "(13, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.83'\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.88'\n",
      "b'mask: 0.69'\n",
      "b'nomask: 0.55'\n",
      "FPS: 8.18\n",
      "(14, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.82'\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.86'\n",
      "b'mask: 0.79'\n",
      "b'mask: 0.74'\n",
      "b'nomask: 0.60'\n",
      "FPS: 8.08\n",
      "(14, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.82'\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.85'\n",
      "b'mask: 0.79'\n",
      "b'mask: 0.55'\n",
      "b'nomask: 0.58'\n",
      "FPS: 8.02\n",
      "(13, 4)\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.87'\n",
      "b'mask: 0.81'\n",
      "b'mask: 0.88'\n",
      "b'mask: 0.78'\n",
      "b'nomask: 0.63'\n",
      "FPS: 7.98\n",
      "(13, 4)\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.83'\n",
      "b'mask: 0.77'\n",
      "b'nomask: 0.56'\n",
      "FPS: 8.08\n",
      "(13, 4)\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.96'\n",
      "b'mask: 0.94'\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.92'\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.83'\n",
      "b'mask: 0.79'\n",
      "b'nomask: 0.52'\n",
      "FPS: 8.10\n",
      "(3, 4)\n",
      "b'mask: 0.85'\n",
      "b'mask: 0.82'\n",
      "b'mask: 0.75'\n",
      "FPS: 10.22\n",
      "(3, 4)\n",
      "b'mask: 0.83'\n",
      "b'mask: 0.82'\n",
      "b'mask: 0.60'\n",
      "FPS: 11.25\n",
      "(4, 4)\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.83'\n",
      "b'mask: 0.76'\n",
      "b'mask: 0.50'\n",
      "FPS: 11.46\n",
      "(4, 4)\n",
      "b'mask: 0.87'\n",
      "b'mask: 0.63'\n",
      "b'mask: 0.54'\n",
      "b'mask: 0.54'\n",
      "FPS: 11.46\n",
      "(4, 4)\n",
      "b'mask: 0.78'\n",
      "b'mask: 0.65'\n",
      "b'mask: 0.64'\n",
      "b'mask: 0.58'\n",
      "FPS: 11.48\n",
      "(3, 4)\n",
      "b'mask: 0.71'\n",
      "b'mask: 0.68'\n",
      "b'mask: 0.66'\n",
      "FPS: 11.84\n",
      "(3, 4)\n",
      "b'mask: 0.75'\n",
      "b'mask: 0.74'\n",
      "b'mask: 0.70'\n",
      "FPS: 12.08\n",
      "(2, 4)\n",
      "b'mask: 0.78'\n",
      "b'mask: 0.57'\n",
      "FPS: 12.41\n",
      "(2, 4)\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.86'\n",
      "FPS: 12.64\n",
      "(2, 4)\n",
      "b'mask: 0.81'\n",
      "b'mask: 0.79'\n",
      "FPS: 12.59\n",
      "(2, 4)\n",
      "b'mask: 0.56'\n",
      "b'mask: 0.54'\n",
      "FPS: 12.65\n",
      "(2, 4)\n",
      "b'mask: 0.78'\n",
      "b'mask: 0.74'\n",
      "FPS: 12.80\n",
      "(1, 4)\n",
      "b'mask: 0.67'\n",
      "FPS: 13.05\n",
      "(1, 4)\n",
      "b'mask: 0.65'\n",
      "FPS: 12.74\n",
      "(1, 4)\n",
      "b'mask: 0.78'\n",
      "FPS: 13.07\n",
      "(1, 4)\n",
      "b'mask: 0.78'\n",
      "FPS: 12.97\n",
      "(1, 4)\n",
      "b'mask: 0.68'\n",
      "FPS: 12.64\n",
      "(1, 4)\n",
      "b'mask: 0.79'\n",
      "FPS: 12.73\n",
      "(1, 4)\n",
      "b'mask: 0.70'\n",
      "FPS: 12.90\n",
      "(1, 4)\n",
      "b'mask: 0.77'\n",
      "FPS: 13.10\n",
      "(1, 4)\n",
      "b'mask: 0.85'\n",
      "FPS: 13.31\n",
      "(1, 4)\n",
      "b'mask: 0.80'\n",
      "FPS: 13.21\n",
      "(1, 4)\n",
      "b'mask: 0.82'\n",
      "FPS: 13.00\n",
      "(2, 4)\n",
      "b'mask: 0.82'\n",
      "b'mask: 0.76'\n",
      "FPS: 12.86\n",
      "(2, 4)\n",
      "b'mask: 0.90'\n",
      "b'mask: 0.86'\n",
      "FPS: 12.61\n",
      "(2, 4)\n",
      "b'mask: 0.95'\n",
      "b'mask: 0.81'\n",
      "FPS: 12.31\n",
      "(2, 4)\n",
      "b'mask: 0.91'\n",
      "b'mask: 0.63'\n",
      "FPS: 12.35\n",
      "(2, 4)\n",
      "b'mask: 0.88'\n",
      "b'mask: 0.86'\n",
      "FPS: 12.53\n",
      "(2, 4)\n",
      "b'mask: 0.89'\n",
      "b'mask: 0.80'\n",
      "FPS: 12.61\n",
      "(2, 4)\n",
      "b'mask: 0.73'\n",
      "b'mask: 0.70'\n",
      "FPS: 12.54\n",
      "(1, 4)\n",
      "b'mask: 0.70'\n",
      "FPS: 12.68\n",
      "(1, 4)\n",
      "b'mask: 0.68'\n",
      "FPS: 13.04\n",
      "FPS: 13.74\n",
      "(1, 4)\n",
      "b'mask: 0.66'\n",
      "FPS: 13.44\n",
      "(1, 4)\n",
      "b'mask: 0.60'\n",
      "FPS: 13.69\n",
      "FPS: 14.38\n",
      "(1, 4)\n",
      "b'mask: 0.68'\n",
      "FPS: 13.98\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.52\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.30\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.47\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.45\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.46\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.04\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.26\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 12.97\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.25\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.31\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.15\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.14\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.29\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.40\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.63\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.33\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.39\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.48\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.60\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.22\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.51\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.55\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.42\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.42\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.43\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.34\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.40\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.39\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.36\n",
      "(1, 4)\n",
      "b'mask: 0.97'\n",
      "FPS: 13.47\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.52\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.53\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.57\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.67\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.70\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.67\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.48\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.04\n",
      "(1, 4)\n",
      "b'mask: 0.97'\n",
      "FPS: 13.21\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.35\n",
      "(1, 4)\n",
      "b'mask: 0.97'\n",
      "FPS: 13.14\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.33\n",
      "FPS: 14.37\n",
      "FPS: 14.91\n",
      "FPS: 15.22\n",
      "FPS: 15.35\n",
      "FPS: 14.85\n",
      "FPS: 15.12\n",
      "FPS: 15.20\n",
      "FPS: 15.31\n",
      "FPS: 15.32\n",
      "FPS: 15.17\n",
      "FPS: 15.11\n",
      "FPS: 14.98\n",
      "FPS: 15.10\n",
      "FPS: 15.01\n",
      "FPS: 15.11\n",
      "(1, 4)\n",
      "b'mask: 0.87'\n",
      "FPS: 14.24\n",
      "(1, 4)\n",
      "b'mask: 0.90'\n",
      "FPS: 13.71\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.46\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.41\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.10\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.30\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.36\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.28\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.39\n",
      "(1, 4)\n",
      "b'mask: 0.96'\n",
      "FPS: 13.42\n",
      "(1, 4)\n",
      "b'mask: 0.93'\n",
      "FPS: 13.38\n",
      "(1, 4)\n",
      "b'mask: 0.87'\n",
      "FPS: 13.36\n",
      "(1, 4)\n",
      "b'mask: 0.91'\n",
      "FPS: 13.44\n",
      "(1, 4)\n",
      "b'mask: 0.97'\n",
      "FPS: 13.48\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.43\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.42\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.40\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.44\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.43\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.42\n",
      "(1, 4)\n",
      "b'mask: 0.95'\n",
      "FPS: 13.46\n",
      "(1, 4)\n",
      "b'mask: 0.82'\n",
      "FPS: 13.52\n",
      "(1, 4)\n",
      "b'mask: 0.79'\n",
      "FPS: 13.60\n",
      "(1, 4)\n",
      "b'mask: 0.82'\n",
      "FPS: 13.56\n",
      "(1, 4)\n",
      "b'mask: 0.84'\n",
      "FPS: 13.45\n",
      "(1, 4)\n",
      "b'mask: 0.81'\n",
      "FPS: 13.50\n",
      "(1, 4)\n",
      "b'mask: 0.81'\n",
      "FPS: 13.63\n",
      "(1, 4)\n",
      "b'mask: 0.75'\n",
      "FPS: 13.71\n",
      "(1, 4)\n",
      "b'mask: 0.81'\n",
      "FPS: 13.39\n",
      "(1, 4)\n",
      "b'mask: 0.79'\n",
      "FPS: 12.99\n",
      "(1, 4)\n",
      "b'mask: 0.91'\n",
      "FPS: 13.18\n",
      "(1, 4)\n",
      "b'mask: 0.91'\n",
      "FPS: 12.92\n",
      "(1, 4)\n",
      "b'mask: 0.92'\n",
      "FPS: 13.36\n",
      "(1, 4)\n",
      "b'mask: 0.86'\n",
      "FPS: 13.63\n",
      "(1, 4)\n",
      "b'mask: 0.83'\n",
      "FPS: 13.67\n",
      "(1, 4)\n",
      "b'mask: 0.81'\n",
      "FPS: 13.63\n",
      "(1, 4)\n",
      "b'mask: 0.78'\n",
      "FPS: 13.52\n",
      "(1, 4)\n",
      "b'mask: 0.72'\n",
      "FPS: 13.02\n",
      "(1, 4)\n",
      "b'mask: 0.86'\n",
      "FPS: 13.29\n",
      "(1, 4)\n",
      "b'mask: 0.88'\n",
      "FPS: 13.38\n",
      "(1, 4)\n",
      "b'mask: 0.81'\n",
      "FPS: 13.39\n",
      "(1, 4)\n",
      "b'mask: 0.89'\n",
      "FPS: 13.40\n",
      "(1, 4)\n",
      "b'mask: 0.95'\n",
      "FPS: 13.31\n",
      "(1, 4)\n",
      "b'mask: 0.89'\n",
      "FPS: 13.14\n",
      "(1, 4)\n",
      "b'mask: 0.91'\n",
      "FPS: 13.16\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.21\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.18\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.20\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.35\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.39\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.38\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.44\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.05\n",
      "(1, 4)\n",
      "b'mask: 0.95'\n",
      "FPS: 13.25\n",
      "(1, 4)\n",
      "b'mask: 0.96'\n",
      "FPS: 13.35\n",
      "(1, 4)\n",
      "b'mask: 0.92'\n",
      "FPS: 13.21\n",
      "(1, 4)\n",
      "b'mask: 0.86'\n",
      "FPS: 13.54\n",
      "(1, 4)\n",
      "b'mask: 0.72'\n",
      "FPS: 13.71\n",
      "(1, 4)\n",
      "b'mask: 0.71'\n",
      "FPS: 13.75\n",
      "(1, 4)\n",
      "b'mask: 0.63'\n",
      "FPS: 13.82\n",
      "(1, 4)\n",
      "b'mask: 0.68'\n",
      "FPS: 13.73\n",
      "(1, 4)\n",
      "b'mask: 0.73'\n",
      "FPS: 13.77\n",
      "(1, 4)\n",
      "b'mask: 0.86'\n",
      "FPS: 13.73\n",
      "(1, 4)\n",
      "b'mask: 0.87'\n",
      "FPS: 13.82\n",
      "(1, 4)\n",
      "b'mask: 0.88'\n",
      "FPS: 13.57\n",
      "(1, 4)\n",
      "b'mask: 0.63'\n",
      "FPS: 13.87\n",
      "(1, 4)\n",
      "b'mask: 0.83'\n",
      "FPS: 13.77\n",
      "(1, 4)\n",
      "b'mask: 0.85'\n",
      "FPS: 13.74\n",
      "(1, 4)\n",
      "b'mask: 0.85'\n",
      "FPS: 13.74\n",
      "(1, 4)\n",
      "b'mask: 0.89'\n",
      "FPS: 13.23\n",
      "(1, 4)\n",
      "b'mask: 0.80'\n",
      "FPS: 13.44\n",
      "(1, 4)\n",
      "b'mask: 0.78'\n",
      "FPS: 13.66\n",
      "(1, 4)\n",
      "b'mask: 0.87'\n",
      "FPS: 13.59\n",
      "(1, 4)\n",
      "b'mask: 0.84'\n",
      "FPS: 13.72\n",
      "(1, 4)\n",
      "b'mask: 0.80'\n",
      "FPS: 13.83\n",
      "(1, 4)\n",
      "b'mask: 0.87'\n",
      "FPS: 13.91\n",
      "(1, 4)\n",
      "b'mask: 0.87'\n",
      "FPS: 13.35\n",
      "(1, 4)\n",
      "b'mask: 0.87'\n",
      "FPS: 13.60\n",
      "(1, 4)\n",
      "b'mask: 0.91'\n",
      "FPS: 13.77\n",
      "(1, 4)\n",
      "b'mask: 0.96'\n",
      "FPS: 13.74\n",
      "(1, 4)\n",
      "b'mask: 0.96'\n",
      "FPS: 13.76\n",
      "(1, 4)\n",
      "b'mask: 0.96'\n",
      "FPS: 13.84\n",
      "(1, 4)\n",
      "b'mask: 0.96'\n",
      "FPS: 13.59\n",
      "(1, 4)\n",
      "b'mask: 0.96'\n",
      "FPS: 13.54\n",
      "(1, 4)\n",
      "b'mask: 0.96'\n",
      "FPS: 13.48\n",
      "(1, 4)\n",
      "b'mask: 0.94'\n",
      "FPS: 13.48\n",
      "(2, 4)\n",
      "b'mask: 0.98'\n",
      "b'mask: 0.78'\n",
      "FPS: 12.88\n",
      "(2, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.72'\n",
      "FPS: 13.10\n",
      "(3, 4)\n",
      "b'mask: 0.97'\n",
      "b'mask: 0.55'\n",
      "b'nomask: 0.55'\n",
      "FPS: 12.79\n",
      "(2, 4)\n",
      "b'mask: 0.94'\n",
      "b'nomask: 0.65'\n",
      "FPS: 12.87\n",
      "(2, 4)\n",
      "b'mask: 0.97'\n",
      "b'nomask: 0.53'\n",
      "FPS: 12.93\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.36\n",
      "(1, 4)\n",
      "b'mask: 0.96'\n",
      "FPS: 13.61\n",
      "(2, 4)\n",
      "b'mask: 0.98'\n",
      "b'nomask: 0.61'\n",
      "FPS: 13.31\n",
      "(2, 4)\n",
      "b'mask: 0.96'\n",
      "b'nomask: 0.52'\n",
      "FPS: 13.20\n",
      "(1, 4)\n",
      "b'mask: 0.97'\n",
      "FPS: 13.16\n",
      "(1, 4)\n",
      "b'mask: 0.93'\n",
      "FPS: 13.57\n",
      "(2, 4)\n",
      "b'mask: 0.91'\n",
      "b'nomask: 0.51'\n",
      "FPS: 13.34\n",
      "(2, 4)\n",
      "b'mask: 0.94'\n",
      "b'nomask: 0.57'\n",
      "FPS: 12.98\n",
      "(2, 4)\n",
      "b'mask: 0.88'\n",
      "b'nomask: 0.59'\n",
      "FPS: 12.99\n",
      "(2, 4)\n",
      "b'mask: 0.93'\n",
      "b'mask: 0.78'\n",
      "FPS: 12.93\n",
      "(2, 4)\n",
      "b'mask: 0.86'\n",
      "b'mask: 0.57'\n",
      "FPS: 12.53\n",
      "(1, 4)\n",
      "b'mask: 0.81'\n",
      "FPS: 13.00\n",
      "(1, 4)\n",
      "b'mask: 0.72'\n",
      "FPS: 13.32\n",
      "(1, 4)\n",
      "b'mask: 0.73'\n",
      "FPS: 13.50\n",
      "(1, 4)\n",
      "b'mask: 0.84'\n",
      "FPS: 13.20\n",
      "(1, 4)\n",
      "b'mask: 0.84'\n",
      "FPS: 13.49\n",
      "(1, 4)\n",
      "b'mask: 0.92'\n",
      "FPS: 13.82\n",
      "(1, 4)\n",
      "b'mask: 0.95'\n",
      "FPS: 13.97\n",
      "(1, 4)\n",
      "b'mask: 0.93'\n",
      "FPS: 13.66\n",
      "(1, 4)\n",
      "b'mask: 0.93'\n",
      "FPS: 13.84\n",
      "(1, 4)\n",
      "b'mask: 0.95'\n",
      "FPS: 13.68\n",
      "(1, 4)\n",
      "b'mask: 0.96'\n",
      "FPS: 13.63\n",
      "(1, 4)\n",
      "b'mask: 0.91'\n",
      "FPS: 13.20\n",
      "(1, 4)\n",
      "b'mask: 0.91'\n",
      "FPS: 13.02\n",
      "(1, 4)\n",
      "b'mask: 0.92'\n",
      "FPS: 12.80\n",
      "(1, 4)\n",
      "b'mask: 0.93'\n",
      "FPS: 13.18\n",
      "(1, 4)\n",
      "b'mask: 0.95'\n",
      "FPS: 13.43\n",
      "(1, 4)\n",
      "b'mask: 0.94'\n",
      "FPS: 13.52\n",
      "(1, 4)\n",
      "b'mask: 0.93'\n",
      "FPS: 13.72\n",
      "(1, 4)\n",
      "b'mask: 0.93'\n",
      "FPS: 13.58\n",
      "(1, 4)\n",
      "b'mask: 0.94'\n",
      "FPS: 13.50\n",
      "(1, 4)\n",
      "b'mask: 0.94'\n",
      "FPS: 13.57\n",
      "(1, 4)\n",
      "b'mask: 0.96'\n",
      "FPS: 13.67\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.61\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.63\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.60\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.48\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.46\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.46\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.02\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 12.79\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.07\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.16\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.21\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.19\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 12.97\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.36\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.55\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.54\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.06\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.20\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 12.95\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.28\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 12.99\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 12.91\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.24\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.46\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.42\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.43\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.43\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.34\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.35\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.37\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.22\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.25\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.32\n",
      "(1, 4)\n",
      "b'mask: 0.99'\n",
      "FPS: 13.29\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.32\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.35\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.31\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.35\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.44\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.40\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.36\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.37\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.40\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.46\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.39\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.36\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.39\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.45\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.39\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.36\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.39\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.25\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.30\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.36\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.38\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.50\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.13\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.24\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.28\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.31\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.32\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.41\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.40\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.51\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.51\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.53\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.51\n",
      "(1, 4)\n",
      "b'mask: 1.00'\n",
      "FPS: 13.51\n",
      "(2, 4)\n",
      "b'mask: 0.99'\n",
      "b'nomask: 0.59'\n",
      "FPS: 13.17\n",
      "(2, 4)\n",
      "b'mask: 0.99'\n",
      "b'nomask: 0.87'\n",
      "FPS: 12.88\n",
      "(2, 4)\n",
      "b'mask: 0.98'\n",
      "b'nomask: 0.67'\n",
      "FPS: 12.75\n",
      "(1, 4)\n",
      "b'mask: 0.96'\n",
      "FPS: 13.01\n",
      "(1, 4)\n",
      "b'mask: 0.87'\n",
      "FPS: 13.14\n",
      "(1, 4)\n",
      "b'mask: 0.77'\n",
      "FPS: 13.27\n",
      "(1, 4)\n",
      "b'mask: 0.98'\n",
      "FPS: 13.30\n",
      "(1, 4)\n",
      "b'mask: 0.96'\n",
      "FPS: 12.88\n",
      "(1, 4)\n",
      "b'mask: 0.97'\n",
      "FPS: 12.61\n",
      "(1, 4)\n",
      "b'mask: 0.96'\n",
      "FPS: 13.10\n",
      "(1, 4)\n",
      "b'mask: 0.96'\n",
      "FPS: 13.22\n"
     ]
    },
    {
     "ename": "NameError",
     "evalue": "name 'vid' is not defined",
     "output_type": "error",
     "traceback": [
      "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[0;31mNameError\u001b[0m                                 Traceback (most recent call last)",
      "\u001b[0;32m<ipython-input-9-6062198b75a4>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mdetect_video\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'testVideo.mp4'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
      "\u001b[0;32m<ipython-input-8-13d4cdb95628>\u001b[0m in \u001b[0;36mdetect_video\u001b[0;34m(video_path)\u001b[0m\n\u001b[1;32m     32\u001b[0m         \u001b[0mwriter\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mwrite\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mframe\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m     33\u001b[0m     \u001b[0mwriter\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mrelease\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 34\u001b[0;31m     \u001b[0mvid\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mrelease\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m     35\u001b[0m     \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'Finish detect!'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
      "\u001b[0;31mNameError\u001b[0m: name 'vid' is not defined"
     ]
    }
   ],
   "source": [
    "detect_video('testVideo.mp4')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 4
}
